<template>
    <div class="component-wrapper">
        <div class="component-header">Border</div>
        
        <hr class="hr-solid-content" data-content="边框绘图">
        <div class="block-flex">
            <div class="border-triangle-left"></div>
            <div class="border-triangle-left-up"></div>
            <div class="border-triangle-left-down"></div>
            <div class="border-triangle-right-up"></div>
            <div class="border-triangle-right-down"></div>
            <div class="border-triangle-right"></div>
            <div class="border-circle"></div>
            <div class="border-oval"></div>
            <div class="border-curvedarrow"></div>
            <div class="border-trapezoid"></div>
            <div class="border-parallelogram"></div>
            <div class="border-star-six"></div>
            <div class="border-star-five"></div>
            <div class="border-heart"></div>
            <div class="border-yin-yang"></div>
            <div class="border-lock"></div>
            <div class="border-pointer"></div>
        </div>
    </div>
</template>

<style scoped>
.block-flex {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.border-triangle-left {
    width: 0;
    height: 0;
    border: 25px solid transparent;
    border-left: 25px solid #32a9d0;
    border-right: none;
}

.border-triangle-left-up {
    width: 0;
    height: 0;
    border-left: 50px solid #32a9d0;
    border-top: 50px solid transparent;
    border-right: none;
}

.border-triangle-left-down {
    width: 0;
    height: 0;
    border-left: 50px solid #32a9d0;
    border-bottom: 50px solid transparent;
    border-right: none;
}

.border-triangle-right {
    width: 0;
    height: 0;
    border: 25px solid transparent;
    border-right: 25px solid #32a9d0;
    border-left: none;
}

.border-triangle-right-up {
    width: 0;
    height: 0;
    border-right: 50px solid #32a9d0;
    border-top: 50px solid transparent;
    border-left: none;
}

.border-triangle-right-down {
    width: 0;
    height: 0;
    border-right: 50px solid #32a9d0;
    border-bottom: 50px solid transparent;
    border-left: none;
}

.border-circle {
    width: 50px; height: 50px;
    background: #32a9d0;
    border-radius: 50%
}

.border-oval {
    width: 100px; height: 50px;
    background: #32a9d0;
    border-radius: 50%;
}

.border-curvedarrow {
    position: relative;
    width: 0;
    border-top: 50px solid transparent;
    border-right: 50px solid #32a9d0;
    transform: rotate(10deg) translateX(143%);
    margin-right: 50px;
}

.border-curvedarrow:after {
    content: "";
    position: absolute;
    border: 0 solid transparent;
    border-top: 20px solid #32a9d0;
    border-radius: 100px 0 0 0;
    top: -72px;
    left: -64px;
    width: 80px;
    height: 80px;
    transform: rotate(45deg);
}

.border-trapezoid {
    width: 100px;
    border-bottom: 50px solid #32a9d0;
    border-right: 25px solid transparent;
    border-left: 25px solid transparent;
}

.border-parallelogram {
    width: 75px;
    height: 50px;
    background: #32a9d0;
    transform: skew(20deg);
}

.border-star-six {
  width: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-bottom: 50px solid #32a9d0;
  position: relative;
}
.border-star-six:after {
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 50px solid #32a9d0;
  position: absolute;
  content: "";
  top: 15px; left: -25px;
}

.border-star-five {
    margin: 50px 0;
    position: relative;
    color: #32a9d0;
    width: 0px;
    border-right: 50px solid transparent;
    border-bottom: 35px solid #32a9d0;
    border-left: 50px solid transparent;
    transform: rotate(35deg);
}
.border-star-five:before {
    border-bottom: 40px solid #32a9d0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    position: absolute;
    top: -25px;
    left: -34px;
    content: '';
    transform: rotate(-35deg);
}
.border-star-five:after {
    position: absolute;
    color: #32a9d0;
    top: 3px; left: -55px;
    border-right: 50px solid transparent;
    border-bottom: 35px solid #32a9d0;
    border-left: 50px solid transparent;
    transform: rotate(-70deg);
    content: '';
}

.border-heart {
    position: relative;
    width: 100px; height: 90px;
}
.border-heart:before,
.border-heart:after {
    position: absolute;
    content: "";
    left: 50px; top: 0;
    width: 50px; height: 80px;
    background: #32a9d0;
    border-radius: 50px 50px 0 0;
    transform: rotate(-45deg);
    transform-origin: 0 100%;
}
.border-heart:after {
    left: 0;
    transform: rotate(45deg);
    transform-origin: 100% 100%;
}

.border-yin-yang {
    width: 100px;
    height: 100px;
    background: #ffffff;
    border-color: #000000;
    border-style: solid;
    border-width: 2px 2px 50px 2px;
    border-radius: 100%;
    position: relative;
}
.border-yin-yang:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background: #fff;
    border: 18px solid #000000;
    border-radius: 100%;
    width: 48px;
    height: 48px;
}
.border-yin-yang:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    background: #000000;
    border: 18px solid #ffffff;
    border-radius: 100%;
    width: 48px;
    height: 48px;
}

.border-lock {
  font-size: 8px;
  position: relative;
  width: 9em; height: 6.5em;
  border-radius: 1em;
  top: 5em;
  box-sizing: border-box;
  border: 1.75em solid #32a9d0;
  border-right-width: 3.75em;
  border-left-width: 3.75em;
  margin: 0 0 3rem 0;
}
.border-lock:before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  border: 1.25em solid #32a9d0;
  width: 7em; height: 6em;
  left: 50%;
  margin-left: -3.5em; top: -6em;
  border-top-left-radius: 3.5em;
  border-top-right-radius: 3.5em;
}
.border-lock:after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  border: .5em solid #32a9d0;
  width: 2.5em; height: 4em;
  border-radius: 1.25em;
  left: 50%; top: -0.5em;
  margin-left: -1.25em;
}

.border-pointer {
  width: 150px; height: 40px;
  position: relative;
  background: #32a9d0;
}
.border-pointer:after {
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  border-left: 20px solid white;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}
.border-pointer:before {
  content: "";
  position: absolute;
  right: -20px; bottom: 0;
  border-left: 20px solid #32a9d0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
}
</style>